package com.allwees.bs.c.module.order.chain.create.request;

import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;

@Data
@NoArgsConstructor
public class OrderItemCreateRequest {

    public OrderItemCreateRequest(String skuUuid, Integer quantity) {
        this.skuUuid = skuUuid;
        this.quantity = quantity;
    }

    /** uuid **/
    private String uuid;

    /** sku uuid  **/
    private String skuUuid;

    /** sku no  **/
    private String skuNo;

    /** 商品自定义编号 **/
    private String defNo;

    /** 购买数量 **/
    private Integer quantity;

    /** 商品单价 **/
    private BigDecimal price = BigDecimal.ZERO;

   /**  商品加价后单价 **/
    private BigDecimal priceAdjust = BigDecimal.ZERO;

    /** 商品快递单价 **/
    private BigDecimal shippingPrice = BigDecimal.ZERO;

    /** 加价后的运费 **/
    private BigDecimal  shippingPriceAdjust =  BigDecimal.ZERO;


    /** sku总金额 **/
    private BigDecimal amt = BigDecimal.ZERO;

    /** sku 总金额 **/
    private BigDecimal amtSku = BigDecimal.ZERO;;

    /** 运费 **/
    private BigDecimal amtShipping = BigDecimal.ZERO;

    /** 商品优惠金额 **/
    private BigDecimal amtSkuCoupon = BigDecimal.ZERO;

    /**
     * sku商品优惠
     */
    private BigDecimal amtProductDiscountSku = BigDecimal.ZERO;

    /**
     * sku运费优惠
     */
    private BigDecimal amtShippingDiscountSku = BigDecimal.ZERO;


    /** 原始单价 **/
    private BigDecimal originalPrice = BigDecimal.ZERO;


    /** sku原始总金额 **/
    private BigDecimal originalAmtSku = BigDecimal.ZERO;

    /** 商家应收sku金额 */
    private BigDecimal merchantAmtSku = BigDecimal.ZERO;

    /** 加价后的sku运费 **/
    private BigDecimal shippingAmtSkuAfterAdd = BigDecimal.ZERO;

    /** 加价后的sku商品金额 **/
    private BigDecimal productAmtSkuAfterAdd = BigDecimal.ZERO;


    /** 平台应收sku金额  **/
    private BigDecimal platformAmtSku = BigDecimal.ZERO;


    /** 原始总金额 **/
    private BigDecimal originalAmt = BigDecimal.ZERO;

    /** 原始运费 **/
    private BigDecimal originalAmtShipping = BigDecimal.ZERO;

    /** sku原始运费 **/
    private BigDecimal originalAmtShippingSku = BigDecimal.ZERO;

    /** 原始运费 **/
    private BigDecimal amtSaleTax = BigDecimal.ZERO;

    /** sku原始税费 **/
    private BigDecimal originalAmtSaleTaxSku = BigDecimal.ZERO;

    /** sku加价后税费 **/
    private BigDecimal amtSaleTaxSkuAfterAdd = BigDecimal.ZERO;


    //cash 实付金额
    private BigDecimal amtCashSku = BigDecimal.ZERO;

    //cash 实付商品金额
    private BigDecimal amtCashProductSku = BigDecimal.ZERO;

    //cash 实付运费金额
    private BigDecimal amtCashShippingSku = BigDecimal.ZERO;



    //===============================

    /** 原始运费 **/
    private String supplierUuid;

    /** 原始运费 **/
    private String retailerUuid;

    /** 原始运费 **/
    private String storeUuid;

    /** product no **/
    private String productNo;

    /** product uuid **/
    private String productUuid;

    /** 商品名称 **/
    private String productName;

    /** 商品图片 **/
    private String productPhoto;

    /** 商品描述 **/
    private String productDesc;

    /** 产品运输到货描述 **/
    private String productShippingArrivalDesc;

    /** 商品类目 **/
    private String categoryNo;

    /** sku color **/
    private String skuColor;

    /** sku size **/
    private String skuSize;

    /** sku 图片 **/
    private String photosStr;

    /** sku 供应价 **/
    private BigDecimal supplyPrice;

    /** sku 零售价 **/
    private BigDecimal retailerPrice;

    /** 币种 **/
    private String currency;

    /** sku 运费币种 **/
    private String skuShippingCurrency;

    /** 客户编号 **/
    private String skuCustomNo;

    /** 买家ID **/
    private  String userUuid;

    /**
     * 是否新手礼商品
     */
    private boolean freeGift;
}
